#!/bin/bash
set -euo pipefail
BaseDir=$(cd "$(dirname "$0")"; pwd)
cd ${BaseDir}

# dockerc 将容器镜像转换成单个的执行文件
:<<EOF
 https://github.com/NilsIrl/dockerc

CI的库内文件的分析
https://docs.github.com/zh/actions/using-github-hosted-runners/using-github-hosted-runners/about-github-hosted-runners
运行器是在 GitHub Actions 工作流中执行作业的计算机。 例如，运行器可以在本地克隆存储库，安装测试软件，然后运行评估代码的命令。
GitHub 提供可用于运行作业的运行器，你也可以托管自己的运行器。 每个 GitHub 托管的运行器都是一个新的虚拟机 (VM)，由 GitHub 托管，并且预安装了运行器应用程序和其他工具，可用于 Ubuntu Linux、Windows 或 macOS 操作系统。
https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2404-Readme.md

 https://github.com/goto-bus-stop/setup-zig
 https://github.com/actions/setup-go

github ruuner的镜像地址  https://github.com/actions/runner-images/

这个项目使用了zig https://ziglang.org/zh-CN/ 
    https://ziglang.org/download/0.13.0/zig-linux-x86_64-0.13.0.tar.xz

# Image from docker hub 远程镜像
dockerc --image docker://oven/bun --output bun
# Image in local docker daemon storage
dockerc --image docker-daemon:mysherlock-image:latest --output sherlock_bin
# Specify target instruction set architecture
dockerc --image docker://hello-world --arch arm64 --output hello
EOF

#本地镜像：docker-daemon:
# ./dockerc --image docker-daemon:alpine:latest --output ./alpine

# root用户执行镜像转换
/home/kasm-user/share/dockerc/dockerc --rootfull --image docker-daemon:alpine:latest --output /home/kasm-user/alpine
/home/kasm-user/share/dockerc/dockerc --rootfull --image docker-daemon:busybox:latest --output /home/kasm-user/busybox

echo "转换后， alpine busybox 即可独立执行"

/home/kasm-user/share/dockerc/dockerc --rootfull --image docker-daemon:things-nginx_ssl:1.18 --output /home/kasm-user/nginxssl
# 镜像暴露了 80 443端口
